import 'package:equatable/equatable.dart';
import 'package:website.core/core/application/blocs/app_navigator_bloc/models/page_configs/app_navigator_page_config.dart';

class AccountPageConfig extends AppNavigatorPageConfig {
  const AccountPageConfig({
    required this.fragmentConfig,
  });

  final AccountPageFragmentConfig fragmentConfig;

  @override
  List<Object?> get props {
    return [
      fragmentConfig,
    ];
  }
}

abstract class AccountPageFragmentConfig extends Equatable {
  const AccountPageFragmentConfig();

  @override
  List<Object?> get props => [];
}

class AccountOverviewAccountPageFragmentConfig extends AccountPageFragmentConfig {
  const AccountOverviewAccountPageFragmentConfig();

}

class PurchaseManagementAccountPageFragmentConfig extends AccountPageFragmentConfig {
  const PurchaseManagementAccountPageFragmentConfig();
}

class TransactionHistoryAccountPageFragmentConfig extends AccountPageFragmentConfig {
  const TransactionHistoryAccountPageFragmentConfig();
}

class PaymentMethodAccountPageFragmentConfig extends AccountPageFragmentConfig {
  const PaymentMethodAccountPageFragmentConfig();
}
